# 针对K-V型，自动按照K进行排序
#coding:utf8
from pyspark import SparkContext,SparkConf

if __name__ == '__main__':
    conf = SparkConf().setAppName("test").setMaster("local[*]")
    sc = SparkContext(conf=conf)

    rdd2 = sc.parallelize([("A", 1), ("b", 2), ("c", 3), ("a", 2), ("b", 3), ("c", 4)])
    #keyfunc可以在排序前对K进行处理（不会改变实际值，但会按照处理后的逻辑值进行排序）
    print(rdd2.sortByKey(ascending=False,numPartitions=1,keyfunc=lambda x:str(x).lower()).collect())